home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / SCSL / ctzrzf.z / ctzrzf
Encoding:
Text File  |  2002-10-03  |  5.4 KB  |  199 lines

  1.  
  2.  
  3.  
  4. CCCCTTTTZZZZRRRRZZZZFFFF((((3333SSSS))))                                                          CCCCTTTTZZZZRRRRZZZZFFFF((((3333SSSS))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      CTZRZF - reduce the M-by-N ( M<=N ) complex upper trapezoidal matrix A to
  10.      upper triangular form by means of unitary transformations
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      SUBROUTINE CTZRZF( M, N, A, LDA, TAU, WORK, LWORK, INFO )
  14.  
  15.          INTEGER        INFO, LDA, LWORK, M, N
  16.  
  17.          COMPLEX        A( LDA, * ), TAU( * ), WORK( * )
  18.  
  19. IIIIMMMMPPPPLLLLEEEEMMMMEEEENNNNTTTTAAAATTTTIIIIOOOONNNN
  20.      These routines are part of the SCSL Scientific Library and can be loaded
  21.      using either the -lscs or the -lscs_mp option.  The -lscs_mp option
  22.      directs the linker to use the multi-processor version of the library.
  23.  
  24.      When linking to SCSL with -lscs or -lscs_mp, the default integer size is
  25.      4 bytes (32 bits). Another version of SCSL is available in which integers
  26.      are 8 bytes (64 bits).  This version allows the user access to larger
  27.      memory sizes and helps when porting legacy Cray codes.  It can be loaded
  28.      by using the -lscs_i8 option or the -lscs_i8_mp option. A program may use
  29.      only one of the two versions; 4-byte integer and 8-byte integer library
  30.      calls cannot be mixed.
  31.  
  32. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  33.      CTZRZF reduces the M-by-N ( M<=N ) complex upper trapezoidal matrix A to
  34.      upper triangular form by means of unitary transformations. The upper
  35.      trapezoidal matrix A is factored as
  36.  
  37.         A = ( R  0 ) * Z,
  38.  
  39.      where Z is an N-by-N unitary matrix and R is an M-by-M upper triangular
  40.      matrix.
  41.  
  42.  
  43. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  44.      M       (input) INTEGER
  45.              The number of rows of the matrix A.  M >= 0.
  46.  
  47.      N       (input) INTEGER
  48.              The number of columns of the matrix A.  N >= 0.
  49.  
  50.      A       (input/output) COMPLEX array, dimension (LDA,N)
  51.              On entry, the leading M-by-N upper trapezoidal part of the array
  52.              A must contain the matrix to be factorized.  On exit, the leading
  53.              M-by-M upper triangular part of A contains the upper triangular
  54.              matrix R, and elements M+1 to N of the first M rows of A, with
  55.              the array TAU, represent the unitary matrix Z as a product of M
  56.              elementary reflectors.
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. CCCCTTTTZZZZRRRRZZZZFFFF((((3333SSSS))))                                                          CCCCTTTTZZZZRRRRZZZZFFFF((((3333SSSS))))
  71.  
  72.  
  73.  
  74.      LDA     (input) INTEGER
  75.              The leading dimension of the array A.  LDA >= max(1,M).
  76.  
  77.      TAU     (output) COMPLEX array, dimension (M)
  78.              The scalar factors of the elementary reflectors.
  79.  
  80.      WORK    (workspace/output) COMPLEX array, dimension (LWORK)
  81.              On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
  82.  
  83.      LWORK   (input) INTEGER
  84.              The dimension of the array WORK.  LWORK >= max(1,M).  For optimum
  85.              performance LWORK >= M*NB, where NB is the optimal blocksize.
  86.  
  87.              If LWORK = -1, then a workspace query is assumed; the routine
  88.              only calculates the optimal size of the WORK array, returns this
  89.              value as the first entry of the WORK array, and no error message
  90.              related to LWORK is issued by XERBLA.
  91.  
  92.      INFO    (output) INTEGER
  93.              = 0:  successful exit
  94.              < 0:  if INFO = -i, the i-th argument had an illegal value
  95.  
  96. FFFFUUUURRRRTTTTHHHHEEEERRRR DDDDEEEETTTTAAAAIIIILLLLSSSS
  97.      Based on contributions by
  98.        A. Petitet, Computer Science Dept., Univ. of Tenn., Knoxville, USA
  99.  
  100.      The factorization is obtained by Householder's method.  The kth
  101.      transformation matrix, Z( k ), which is used to introduce zeros into the
  102.      ( m - k + 1 )th row of A, is given in the form
  103.  
  104.         Z( k ) = ( I     0   ),
  105.                  ( 0  T( k ) )
  106.  
  107.      where
  108.  
  109.         T( k ) = I - tau*u( k )*u( k )',   u( k ) = (   1    ),
  110.                                                     (   0    )
  111.                                                     ( z( k ) )
  112.  
  113.      tau is a scalar and z( k ) is an ( n - m ) element vector.  tau and z( k
  114.      ) are chosen to annihilate the elements of the kth row of X.
  115.  
  116.      The scalar tau is returned in the kth element of TAU and the vector u( k
  117.      ) in the kth row of A, such that the elements of z( k ) are in  a( k, m +
  118.      1 ), ..., a( k, n ). The elements of R are returned in the upper
  119.      triangular part of A.
  120.  
  121.      Z is given by
  122.  
  123.         Z =  Z( 1 ) * Z( 2 ) * ... * Z( m ).
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. CCCCTTTTZZZZRRRRZZZZFFFF((((3333SSSS))))                                                          CCCCTTTTZZZZRRRRZZZZFFFF((((3333SSSS))))
  137.  
  138.  
  139.  
  140. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  141.      INTRO_LAPACK(3S), INTRO_SCSL(3S)
  142.  
  143.      This man page is available only online.
  144.  
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.